package com.lee.system.mapper;

import java.util.List;

import com.lee.system.entity.User;



/**
 * 用户 数据层
 * 
 * @author LiPengFei
 *
 */
public interface UserMapper {
	/**
	 * 查询用户信息
	 * 
	 * @param userId
	 *            用户ID
	 * @return 用户信息
	 */
	public User selectUserById(Long userId);

	/**
	 * 根据用户登录名查询用户信息
	 * 
	 * @param loginName
	 * @return 用户信息
	 */
	public User selectByLoginName(String loginName);

	/**
	 * 查询用户列表
	 * 
	 * @param user
	 *            用户信息
	 * @return 用户集合
	 */
	public List<User> selectUserList(User user);

	/**
	 * 新增用户
	 * 
	 * @param user
	 *            用户信息
	 * @return 结果
	 */
	public int insertUser(User user);

	/**
	 * 修改用户
	 * 
	 * @param user
	 *            用户信息
	 * @return 结果
	 */
	public int updateUser(User user);

	/**
	 * 批量删除用户
	 * 
	 * @param userIds
	 *            需要删除的数据ID
	 * @return 结果
	 */
	public int deleteUserByIds(Long[] userIds);
	
	/**
	 * 检查用户名是否唯一
	 * 
	 * @param loginName
	 * @return
	 */
	public int checkLoginNameUnique(String loginName);

	/**
	 * 校验邮箱是否唯一
	 * 
	 * @param email
	 * @return
	 */
	public User checkEmailUnique(String email);

	/**
	 * 校验电话是否唯一
	 * 
	 * @param phonenumber
	 * @return
	 */
	public User checkPhoneUnique(String phonenumber);

}